Optimizing Compilation of Constraint Handling Rules
نویسندگان
چکیده
منابع مشابه
Optimizing compilation of constraint handling rules in HAL
In this paper we discuss the optimizing compilation of Constraint Handling Rules (CHRs). CHRs are a multi-headed committed choice constraint language, commonly applied for writing incremental constraint solvers. CHRs are usually implemented as a language extension that compiles to the underlying language. In this paper we show how we can use different kinds of information in the compilation of ...
متن کاملOptimizing Compilation of CHR with Rule Priorities
Constraint Handling Rules were recently extended with userdefinable rule priorities. This paper shows how this extended language can be efficiently compiled into the underlying host language. It extends previous work by supporting rules with dynamic priorities and by introducing various optimizations. The effects of the optimizations are empirically evaluated and the new compiler is compared wi...
متن کاملOptimizing Compilation and Computational Complexity of Constraint Handling Rules
Constraint Handling Rules (CHR) is a very-high-level declarative programming language based on concurrent multiset rewrite rules that are conditional, multiheaded, and committed-choice. Originally designed in the early 1990s as a specialpurpose programming language for adding user-defined constraint solvers to a host language, CHR has evolved over the last decade into a powerful and elegant gen...
متن کاملSuspension Optimization and In-place Updates for Optimizing CHR Compilation
We introduce two CHR compiler optimizations aimed at reducing garbage creation by reusing suspension terms, used to represent the CHR constraints. We have implemented both optimizations in the K.U.Leuven CHR system. The optimizations dramatically improve the memory footprint and speed of CHR programs: in several benchmarks we have measured speedups of 40% and more, and a reduction of memory usa...
متن کاملCompiling Constraint Handling Rules to Java: A Reconstruction
In this report, we provide a detailed description of the compilation scheme the K.U.Leuven JCHR system uses to compile CHR to efficient Java code. We start from a relatively straightforward adaptation of the traditional CHR compilation scheme for Prolog, and gradually add all its basic optimizations. Next, we show why this compilation scheme is not suited for compilation to an imperative host l...
متن کامل